1. Field of the Invention
The present invention is utilized for packet communication having a broadcast function for a terminal group. In addition, the present invention can be utilized in a situation where the same radio data is transmitted to a single mobile terminal through a plurality of routes to thereby avoid data loss at the single mobile terminal.
2. Description of Related Art
Conventionally, the aforementioned type of packet communication system having a broadcast function for a terminal group is utilized for the purpose that a packet destined to a plurality of terminals is duplicated at a branching point on a network, such as described in Dave Kosiur, “IP Multicasting: The Complete Guide To Interactive Corporate Networks”, Chapter 3, pp. 57–65, FIGS. 3.8, 3.11, to thereby enable more effective utilization of a band source on the network as compared with a situation where the packet is duplicated by the sending terminal at the same number as the destined terminals.
FIG. 14 is a schematic view of a conventional exemplary packet communication system having a broadcast function. This packet communication system having the broadcast function is constituted of multicast routers 101, 102, 103 each having a function to deliver multicast packets, and multicast receiving terminals 104, 105, 106 for receiving the multicast packets.
The multicast router 101 is connected to the multicast routers 102, 103, the multicast router 102 is connected to the multicast receiving terminals 104, 105, and the multicast router 103 is connected to the multicast receiving terminal 106.
FIG. 15 is a block diagram showing an internal constitution of each multicast router in FIG. 14. Each of the multicast routers 101 to 103 is constituted of: an input link 111 as an input interface of a packet; output links 113, 114 as output interfaces of the packet; a multicast routing function part 112 for determining, based on the address of the multicast packet, that output link(s) through which the packet is to be transferred, and for conducting the packet delivery to the determined output link; a multicast address-output link matching table 115 for holding the relationship between the multicast address(es) and the output link(s); and a multicast participating terminal managing function part 116 for processing a multicast participation registration request from that terminal requiring multicast delivery.
FIG. 16 is a block diagram showing an internal constitution of each multicast receiving terminal in FIG. 14. Each of the multicast receiving terminals 104 to 106 is constituted of: an input link 121 as an input interface of a packet; an output link 126 as an output interface of the packet; an upper layer 124 such as for conducting a procedure to pass the packet to an application, and for determining the multicast which the pertinent multicast receiving terminal participates in; a multicast registration function part 125 for conducting issuance of a participation registration request to the multicast; a participating multicast address storing part 123 for holding the multicast address which the pertinent multicast receiving terminal is participating in; and an address determining function part 122 for referring to the data of the participating multicast address storing part 123 to thereby conduct receipt determination.
FIG. 17 is an explanatory view of the multicast address-output link matching table 115 in FIG. 15. This multicast address-output link matching table 115 is constituted of a multicast address field 131 and an output link list field 132, and is used, based on the input comprising the multicast address for destinations of the multicast packet, to search for a list of output links to which the multicast packet is transferred.
There will be now described the operation of the conventional example. There will be firstly described the operation of the multicast receiving terminals 104 to 106 for participating in the multicast. In each of the multicast receiving terminals 104 to 106, the multicast registration function part 125, which has received a command from the upper layer 124 to participate in a particular multicast, writes a participation target multicast address into the participating multicast address storing part 123 and then sends: a multicast registration request described with the address of the node (multicast receiving terminal) itself and a multicast address which the node desires to participate in; to either of the adjacent multicast routers 102, 103 via output link 126.
The pertinent one of the multicast routers 102, 103 having received the multicast registration request from the input link 111 is to transfer the request to the multicast participating terminal managing function part 116.
The multicast participating terminal managing function part 116 having received the request is to add, to the multicast address-output link matching table 115, the matching relationship between: the multicast address described in the request; and the output link directed to the node which has issued the participation request. The processing is finished at this time, if the multicast address described in the request already exists in the multicast address-output link matching table 115.
When the multicast address described in the request is a new address in the multicast address-output link matching table 115, the pertinent multicast router issues a multicast registration request of the node (multicast router) itself to an adjacent multicast router which in turn conducts the same procedure as the aforementioned.
There will be now described a delivery operation of a multicast packet. In each of the multicast routers 102, 103, the multicast routing function part 112 having received the multicast packet from the input link 111 extracts the multicast address described in the multicast packet, and refers to the multicast address-output link matching table 115 to thereby obtain an output link list therefrom. The multicast routing function part 112 sends the multicast packet to those output links included in the output link list.
The address determining function part 122, of the pertinent one of the multicast receiving terminals 104 to 106 having received the multicast packet via its input link from the multicast router 102 or 103, determines whether the multicast address of the multicast packet is stored in the pertinent participating multicast address storing part 123 or not. If stored, the address determining function part 122 decides that the own node (multicast receiving terminal) is participating in the multicast, and transfers the packet to the upper layer 124. If not stored, this packet is abolished or rejected. These operations allow the multicast receiving terminals 104 to 106 to participate in the multicast and to receive packets of those multicasts which the receiving terminals have registered to participate in.
The problem of the conventional packet communication system having the broadcast function to the terminal group resides in the enormous number of pieces of management information and the enormous number of management procedures for multicast delivery.
This is due to the necessity of holding and managing output link lists for the enormous number of multicast addresses in all the multicast routers.